package com.gj.pojo;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

public class GoodDOQuery {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    protected Integer pageNo = 1;

    protected Integer startRow;

    protected Integer pageSize = 10;

    protected String fields;

    public GoodDOQuery() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    public void setPageNo(Integer pageNo) {
        this.pageNo=pageNo;
        this.startRow = (pageNo-1)*this.pageSize;
    }

    public Integer getPageNo() {
        return pageNo;
    }

    public void setStartRow(Integer startRow) {
        this.startRow=startRow;
    }

    public Integer getStartRow() {
        return startRow;
    }

    public void setPageSize(Integer pageSize) {
        this.pageSize=pageSize;
        this.startRow = (pageNo-1)*this.pageSize;
    }

    public Integer getPageSize() {
        return pageSize;
    }

    public void setFields(String fields) {
        this.fields=fields;
    }

    public String getFields() {
        return fields;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andGoodIdIsNull() {
            addCriterion("good_id is null");
            return (Criteria) this;
        }

        public Criteria andGoodIdIsNotNull() {
            addCriterion("good_id is not null");
            return (Criteria) this;
        }

        public Criteria andGoodIdEqualTo(Integer value) {
            addCriterion("good_id =", value, "goodId");
            return (Criteria) this;
        }

        public Criteria andGoodIdNotEqualTo(Integer value) {
            addCriterion("good_id <>", value, "goodId");
            return (Criteria) this;
        }

        public Criteria andGoodIdGreaterThan(Integer value) {
            addCriterion("good_id >", value, "goodId");
            return (Criteria) this;
        }

        public Criteria andGoodIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("good_id >=", value, "goodId");
            return (Criteria) this;
        }

        public Criteria andGoodIdLessThan(Integer value) {
            addCriterion("good_id <", value, "goodId");
            return (Criteria) this;
        }

        public Criteria andGoodIdLessThanOrEqualTo(Integer value) {
            addCriterion("good_id <=", value, "goodId");
            return (Criteria) this;
        }

        public Criteria andGoodIdIn(List<Integer> values) {
            addCriterion("good_id in", values, "goodId");
            return (Criteria) this;
        }

        public Criteria andGoodIdNotIn(List<Integer> values) {
            addCriterion("good_id not in", values, "goodId");
            return (Criteria) this;
        }

        public Criteria andGoodIdBetween(Integer value1, Integer value2) {
            addCriterion("good_id between", value1, value2, "goodId");
            return (Criteria) this;
        }

        public Criteria andGoodIdNotBetween(Integer value1, Integer value2) {
            addCriterion("good_id not between", value1, value2, "goodId");
            return (Criteria) this;
        }

        public Criteria andClassIdIsNull() {
            addCriterion("class_id is null");
            return (Criteria) this;
        }

        public Criteria andClassIdIsNotNull() {
            addCriterion("class_id is not null");
            return (Criteria) this;
        }

        public Criteria andClassIdEqualTo(Integer value) {
            addCriterion("class_id =", value, "classId");
            return (Criteria) this;
        }

        public Criteria andClassIdNotEqualTo(Integer value) {
            addCriterion("class_id <>", value, "classId");
            return (Criteria) this;
        }

        public Criteria andClassIdGreaterThan(Integer value) {
            addCriterion("class_id >", value, "classId");
            return (Criteria) this;
        }

        public Criteria andClassIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("class_id >=", value, "classId");
            return (Criteria) this;
        }

        public Criteria andClassIdLessThan(Integer value) {
            addCriterion("class_id <", value, "classId");
            return (Criteria) this;
        }

        public Criteria andClassIdLessThanOrEqualTo(Integer value) {
            addCriterion("class_id <=", value, "classId");
            return (Criteria) this;
        }

        public Criteria andClassIdIn(List<Integer> values) {
            addCriterion("class_id in", values, "classId");
            return (Criteria) this;
        }

        public Criteria andClassIdNotIn(List<Integer> values) {
            addCriterion("class_id not in", values, "classId");
            return (Criteria) this;
        }

        public Criteria andClassIdBetween(Integer value1, Integer value2) {
            addCriterion("class_id between", value1, value2, "classId");
            return (Criteria) this;
        }

        public Criteria andClassIdNotBetween(Integer value1, Integer value2) {
            addCriterion("class_id not between", value1, value2, "classId");
            return (Criteria) this;
        }

        public Criteria andGoodFloorpriceIsNull() {
            addCriterion("good_floorprice is null");
            return (Criteria) this;
        }

        public Criteria andGoodFloorpriceIsNotNull() {
            addCriterion("good_floorprice is not null");
            return (Criteria) this;
        }

        public Criteria andGoodFloorpriceEqualTo(BigDecimal value) {
            addCriterion("good_floorprice =", value, "goodFloorprice");
            return (Criteria) this;
        }

        public Criteria andGoodFloorpriceNotEqualTo(BigDecimal value) {
            addCriterion("good_floorprice <>", value, "goodFloorprice");
            return (Criteria) this;
        }

        public Criteria andGoodFloorpriceGreaterThan(BigDecimal value) {
            addCriterion("good_floorprice >", value, "goodFloorprice");
            return (Criteria) this;
        }

        public Criteria andGoodFloorpriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("good_floorprice >=", value, "goodFloorprice");
            return (Criteria) this;
        }

        public Criteria andGoodFloorpriceLessThan(BigDecimal value) {
            addCriterion("good_floorprice <", value, "goodFloorprice");
            return (Criteria) this;
        }

        public Criteria andGoodFloorpriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("good_floorprice <=", value, "goodFloorprice");
            return (Criteria) this;
        }

        public Criteria andGoodFloorpriceIn(List<BigDecimal> values) {
            addCriterion("good_floorprice in", values, "goodFloorprice");
            return (Criteria) this;
        }

        public Criteria andGoodFloorpriceNotIn(List<BigDecimal> values) {
            addCriterion("good_floorprice not in", values, "goodFloorprice");
            return (Criteria) this;
        }

        public Criteria andGoodFloorpriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("good_floorprice between", value1, value2, "goodFloorprice");
            return (Criteria) this;
        }

        public Criteria andGoodFloorpriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("good_floorprice not between", value1, value2, "goodFloorprice");
            return (Criteria) this;
        }

        public Criteria andGoodNameIsNull() {
            addCriterion("good_name is null");
            return (Criteria) this;
        }

        public Criteria andGoodNameIsNotNull() {
            addCriterion("good_name is not null");
            return (Criteria) this;
        }

        public Criteria andGoodNameEqualTo(String value) {
            addCriterion("good_name =", value, "goodName");
            return (Criteria) this;
        }

        public Criteria andGoodNameNotEqualTo(String value) {
            addCriterion("good_name <>", value, "goodName");
            return (Criteria) this;
        }

        public Criteria andGoodNameGreaterThan(String value) {
            addCriterion("good_name >", value, "goodName");
            return (Criteria) this;
        }

        public Criteria andGoodNameGreaterThanOrEqualTo(String value) {
            addCriterion("good_name >=", value, "goodName");
            return (Criteria) this;
        }

        public Criteria andGoodNameLessThan(String value) {
            addCriterion("good_name <", value, "goodName");
            return (Criteria) this;
        }

        public Criteria andGoodNameLessThanOrEqualTo(String value) {
            addCriterion("good_name <=", value, "goodName");
            return (Criteria) this;
        }

        public Criteria andGoodNameLike(String value) {
            addCriterion("good_name like", value, "goodName");
            return (Criteria) this;
        }

        public Criteria andGoodNameNotLike(String value) {
            addCriterion("good_name not like", value, "goodName");
            return (Criteria) this;
        }

        public Criteria andGoodNameIn(List<String> values) {
            addCriterion("good_name in", values, "goodName");
            return (Criteria) this;
        }

        public Criteria andGoodNameNotIn(List<String> values) {
            addCriterion("good_name not in", values, "goodName");
            return (Criteria) this;
        }

        public Criteria andGoodNameBetween(String value1, String value2) {
            addCriterion("good_name between", value1, value2, "goodName");
            return (Criteria) this;
        }

        public Criteria andGoodNameNotBetween(String value1, String value2) {
            addCriterion("good_name not between", value1, value2, "goodName");
            return (Criteria) this;
        }

        public Criteria andGoodBelongIsNull() {
            addCriterion("good_belong is null");
            return (Criteria) this;
        }

        public Criteria andGoodBelongIsNotNull() {
            addCriterion("good_belong is not null");
            return (Criteria) this;
        }

        public Criteria andGoodBelongEqualTo(Integer value) {
            addCriterion("good_belong =", value, "goodBelong");
            return (Criteria) this;
        }

        public Criteria andGoodBelongNotEqualTo(Integer value) {
            addCriterion("good_belong <>", value, "goodBelong");
            return (Criteria) this;
        }

        public Criteria andGoodBelongGreaterThan(Integer value) {
            addCriterion("good_belong >", value, "goodBelong");
            return (Criteria) this;
        }

        public Criteria andGoodBelongGreaterThanOrEqualTo(Integer value) {
            addCriterion("good_belong >=", value, "goodBelong");
            return (Criteria) this;
        }

        public Criteria andGoodBelongLessThan(Integer value) {
            addCriterion("good_belong <", value, "goodBelong");
            return (Criteria) this;
        }

        public Criteria andGoodBelongLessThanOrEqualTo(Integer value) {
            addCriterion("good_belong <=", value, "goodBelong");
            return (Criteria) this;
        }

        public Criteria andGoodBelongIn(List<Integer> values) {
            addCriterion("good_belong in", values, "goodBelong");
            return (Criteria) this;
        }

        public Criteria andGoodBelongNotIn(List<Integer> values) {
            addCriterion("good_belong not in", values, "goodBelong");
            return (Criteria) this;
        }

        public Criteria andGoodBelongBetween(Integer value1, Integer value2) {
            addCriterion("good_belong between", value1, value2, "goodBelong");
            return (Criteria) this;
        }

        public Criteria andGoodBelongNotBetween(Integer value1, Integer value2) {
            addCriterion("good_belong not between", value1, value2, "goodBelong");
            return (Criteria) this;
        }

        public Criteria andGoodVisitedIsNull() {
            addCriterion("good_visited is null");
            return (Criteria) this;
        }

        public Criteria andGoodVisitedIsNotNull() {
            addCriterion("good_visited is not null");
            return (Criteria) this;
        }

        public Criteria andGoodVisitedEqualTo(Integer value) {
            addCriterion("good_visited =", value, "goodVisited");
            return (Criteria) this;
        }

        public Criteria andGoodVisitedNotEqualTo(Integer value) {
            addCriterion("good_visited <>", value, "goodVisited");
            return (Criteria) this;
        }

        public Criteria andGoodVisitedGreaterThan(Integer value) {
            addCriterion("good_visited >", value, "goodVisited");
            return (Criteria) this;
        }

        public Criteria andGoodVisitedGreaterThanOrEqualTo(Integer value) {
            addCriterion("good_visited >=", value, "goodVisited");
            return (Criteria) this;
        }

        public Criteria andGoodVisitedLessThan(Integer value) {
            addCriterion("good_visited <", value, "goodVisited");
            return (Criteria) this;
        }

        public Criteria andGoodVisitedLessThanOrEqualTo(Integer value) {
            addCriterion("good_visited <=", value, "goodVisited");
            return (Criteria) this;
        }

        public Criteria andGoodVisitedIn(List<Integer> values) {
            addCriterion("good_visited in", values, "goodVisited");
            return (Criteria) this;
        }

        public Criteria andGoodVisitedNotIn(List<Integer> values) {
            addCriterion("good_visited not in", values, "goodVisited");
            return (Criteria) this;
        }

        public Criteria andGoodVisitedBetween(Integer value1, Integer value2) {
            addCriterion("good_visited between", value1, value2, "goodVisited");
            return (Criteria) this;
        }

        public Criteria andGoodVisitedNotBetween(Integer value1, Integer value2) {
            addCriterion("good_visited not between", value1, value2, "goodVisited");
            return (Criteria) this;
        }

        public Criteria andGoodFavoritedIsNull() {
            addCriterion("good_favorited is null");
            return (Criteria) this;
        }

        public Criteria andGoodFavoritedIsNotNull() {
            addCriterion("good_favorited is not null");
            return (Criteria) this;
        }

        public Criteria andGoodFavoritedEqualTo(Integer value) {
            addCriterion("good_favorited =", value, "goodFavorited");
            return (Criteria) this;
        }

        public Criteria andGoodFavoritedNotEqualTo(Integer value) {
            addCriterion("good_favorited <>", value, "goodFavorited");
            return (Criteria) this;
        }

        public Criteria andGoodFavoritedGreaterThan(Integer value) {
            addCriterion("good_favorited >", value, "goodFavorited");
            return (Criteria) this;
        }

        public Criteria andGoodFavoritedGreaterThanOrEqualTo(Integer value) {
            addCriterion("good_favorited >=", value, "goodFavorited");
            return (Criteria) this;
        }

        public Criteria andGoodFavoritedLessThan(Integer value) {
            addCriterion("good_favorited <", value, "goodFavorited");
            return (Criteria) this;
        }

        public Criteria andGoodFavoritedLessThanOrEqualTo(Integer value) {
            addCriterion("good_favorited <=", value, "goodFavorited");
            return (Criteria) this;
        }

        public Criteria andGoodFavoritedIn(List<Integer> values) {
            addCriterion("good_favorited in", values, "goodFavorited");
            return (Criteria) this;
        }

        public Criteria andGoodFavoritedNotIn(List<Integer> values) {
            addCriterion("good_favorited not in", values, "goodFavorited");
            return (Criteria) this;
        }

        public Criteria andGoodFavoritedBetween(Integer value1, Integer value2) {
            addCriterion("good_favorited between", value1, value2, "goodFavorited");
            return (Criteria) this;
        }

        public Criteria andGoodFavoritedNotBetween(Integer value1, Integer value2) {
            addCriterion("good_favorited not between", value1, value2, "goodFavorited");
            return (Criteria) this;
        }

        public Criteria andGoodBuyedIsNull() {
            addCriterion("good_buyed is null");
            return (Criteria) this;
        }

        public Criteria andGoodBuyedIsNotNull() {
            addCriterion("good_buyed is not null");
            return (Criteria) this;
        }

        public Criteria andGoodBuyedEqualTo(Integer value) {
            addCriterion("good_buyed =", value, "goodBuyed");
            return (Criteria) this;
        }

        public Criteria andGoodBuyedNotEqualTo(Integer value) {
            addCriterion("good_buyed <>", value, "goodBuyed");
            return (Criteria) this;
        }

        public Criteria andGoodBuyedGreaterThan(Integer value) {
            addCriterion("good_buyed >", value, "goodBuyed");
            return (Criteria) this;
        }

        public Criteria andGoodBuyedGreaterThanOrEqualTo(Integer value) {
            addCriterion("good_buyed >=", value, "goodBuyed");
            return (Criteria) this;
        }

        public Criteria andGoodBuyedLessThan(Integer value) {
            addCriterion("good_buyed <", value, "goodBuyed");
            return (Criteria) this;
        }

        public Criteria andGoodBuyedLessThanOrEqualTo(Integer value) {
            addCriterion("good_buyed <=", value, "goodBuyed");
            return (Criteria) this;
        }

        public Criteria andGoodBuyedIn(List<Integer> values) {
            addCriterion("good_buyed in", values, "goodBuyed");
            return (Criteria) this;
        }

        public Criteria andGoodBuyedNotIn(List<Integer> values) {
            addCriterion("good_buyed not in", values, "goodBuyed");
            return (Criteria) this;
        }

        public Criteria andGoodBuyedBetween(Integer value1, Integer value2) {
            addCriterion("good_buyed between", value1, value2, "goodBuyed");
            return (Criteria) this;
        }

        public Criteria andGoodBuyedNotBetween(Integer value1, Integer value2) {
            addCriterion("good_buyed not between", value1, value2, "goodBuyed");
            return (Criteria) this;
        }

        public Criteria andGoodDescriptionIsNull() {
            addCriterion("good_description is null");
            return (Criteria) this;
        }

        public Criteria andGoodDescriptionIsNotNull() {
            addCriterion("good_description is not null");
            return (Criteria) this;
        }

        public Criteria andGoodDescriptionEqualTo(String value) {
            addCriterion("good_description =", value, "goodDescription");
            return (Criteria) this;
        }

        public Criteria andGoodDescriptionNotEqualTo(String value) {
            addCriterion("good_description <>", value, "goodDescription");
            return (Criteria) this;
        }

        public Criteria andGoodDescriptionGreaterThan(String value) {
            addCriterion("good_description >", value, "goodDescription");
            return (Criteria) this;
        }

        public Criteria andGoodDescriptionGreaterThanOrEqualTo(String value) {
            addCriterion("good_description >=", value, "goodDescription");
            return (Criteria) this;
        }

        public Criteria andGoodDescriptionLessThan(String value) {
            addCriterion("good_description <", value, "goodDescription");
            return (Criteria) this;
        }

        public Criteria andGoodDescriptionLessThanOrEqualTo(String value) {
            addCriterion("good_description <=", value, "goodDescription");
            return (Criteria) this;
        }

        public Criteria andGoodDescriptionLike(String value) {
            addCriterion("good_description like", value, "goodDescription");
            return (Criteria) this;
        }

        public Criteria andGoodDescriptionNotLike(String value) {
            addCriterion("good_description not like", value, "goodDescription");
            return (Criteria) this;
        }

        public Criteria andGoodDescriptionIn(List<String> values) {
            addCriterion("good_description in", values, "goodDescription");
            return (Criteria) this;
        }

        public Criteria andGoodDescriptionNotIn(List<String> values) {
            addCriterion("good_description not in", values, "goodDescription");
            return (Criteria) this;
        }

        public Criteria andGoodDescriptionBetween(String value1, String value2) {
            addCriterion("good_description between", value1, value2, "goodDescription");
            return (Criteria) this;
        }

        public Criteria andGoodDescriptionNotBetween(String value1, String value2) {
            addCriterion("good_description not between", value1, value2, "goodDescription");
            return (Criteria) this;
        }

        public Criteria andGoodStatusIsNull() {
            addCriterion("good_status is null");
            return (Criteria) this;
        }

        public Criteria andGoodStatusIsNotNull() {
            addCriterion("good_status is not null");
            return (Criteria) this;
        }

        public Criteria andGoodStatusEqualTo(Integer value) {
            addCriterion("good_status =", value, "goodStatus");
            return (Criteria) this;
        }

        public Criteria andGoodStatusNotEqualTo(Integer value) {
            addCriterion("good_status <>", value, "goodStatus");
            return (Criteria) this;
        }

        public Criteria andGoodStatusGreaterThan(Integer value) {
            addCriterion("good_status >", value, "goodStatus");
            return (Criteria) this;
        }

        public Criteria andGoodStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("good_status >=", value, "goodStatus");
            return (Criteria) this;
        }

        public Criteria andGoodStatusLessThan(Integer value) {
            addCriterion("good_status <", value, "goodStatus");
            return (Criteria) this;
        }

        public Criteria andGoodStatusLessThanOrEqualTo(Integer value) {
            addCriterion("good_status <=", value, "goodStatus");
            return (Criteria) this;
        }

        public Criteria andGoodStatusIn(List<Integer> values) {
            addCriterion("good_status in", values, "goodStatus");
            return (Criteria) this;
        }

        public Criteria andGoodStatusNotIn(List<Integer> values) {
            addCriterion("good_status not in", values, "goodStatus");
            return (Criteria) this;
        }

        public Criteria andGoodStatusBetween(Integer value1, Integer value2) {
            addCriterion("good_status between", value1, value2, "goodStatus");
            return (Criteria) this;
        }

        public Criteria andGoodStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("good_status not between", value1, value2, "goodStatus");
            return (Criteria) this;
        }

        public Criteria andGoodPostageIsNull() {
            addCriterion("good_postage is null");
            return (Criteria) this;
        }

        public Criteria andGoodPostageIsNotNull() {
            addCriterion("good_postage is not null");
            return (Criteria) this;
        }

        public Criteria andGoodPostageEqualTo(Double value) {
            addCriterion("good_postage =", value, "goodPostage");
            return (Criteria) this;
        }

        public Criteria andGoodPostageNotEqualTo(Double value) {
            addCriterion("good_postage <>", value, "goodPostage");
            return (Criteria) this;
        }

        public Criteria andGoodPostageGreaterThan(Double value) {
            addCriterion("good_postage >", value, "goodPostage");
            return (Criteria) this;
        }

        public Criteria andGoodPostageGreaterThanOrEqualTo(Double value) {
            addCriterion("good_postage >=", value, "goodPostage");
            return (Criteria) this;
        }

        public Criteria andGoodPostageLessThan(Double value) {
            addCriterion("good_postage <", value, "goodPostage");
            return (Criteria) this;
        }

        public Criteria andGoodPostageLessThanOrEqualTo(Double value) {
            addCriterion("good_postage <=", value, "goodPostage");
            return (Criteria) this;
        }

        public Criteria andGoodPostageIn(List<Double> values) {
            addCriterion("good_postage in", values, "goodPostage");
            return (Criteria) this;
        }

        public Criteria andGoodPostageNotIn(List<Double> values) {
            addCriterion("good_postage not in", values, "goodPostage");
            return (Criteria) this;
        }

        public Criteria andGoodPostageBetween(Double value1, Double value2) {
            addCriterion("good_postage between", value1, value2, "goodPostage");
            return (Criteria) this;
        }

        public Criteria andGoodPostageNotBetween(Double value1, Double value2) {
            addCriterion("good_postage not between", value1, value2, "goodPostage");
            return (Criteria) this;
        }

        public Criteria andGoodCoverIsNull() {
            addCriterion("good_cover is null");
            return (Criteria) this;
        }

        public Criteria andGoodCoverIsNotNull() {
            addCriterion("good_cover is not null");
            return (Criteria) this;
        }

        public Criteria andGoodCoverEqualTo(String value) {
            addCriterion("good_cover =", value, "goodCover");
            return (Criteria) this;
        }

        public Criteria andGoodCoverNotEqualTo(String value) {
            addCriterion("good_cover <>", value, "goodCover");
            return (Criteria) this;
        }

        public Criteria andGoodCoverGreaterThan(String value) {
            addCriterion("good_cover >", value, "goodCover");
            return (Criteria) this;
        }

        public Criteria andGoodCoverGreaterThanOrEqualTo(String value) {
            addCriterion("good_cover >=", value, "goodCover");
            return (Criteria) this;
        }

        public Criteria andGoodCoverLessThan(String value) {
            addCriterion("good_cover <", value, "goodCover");
            return (Criteria) this;
        }

        public Criteria andGoodCoverLessThanOrEqualTo(String value) {
            addCriterion("good_cover <=", value, "goodCover");
            return (Criteria) this;
        }

        public Criteria andGoodCoverLike(String value) {
            addCriterion("good_cover like", value, "goodCover");
            return (Criteria) this;
        }

        public Criteria andGoodCoverNotLike(String value) {
            addCriterion("good_cover not like", value, "goodCover");
            return (Criteria) this;
        }

        public Criteria andGoodCoverIn(List<String> values) {
            addCriterion("good_cover in", values, "goodCover");
            return (Criteria) this;
        }

        public Criteria andGoodCoverNotIn(List<String> values) {
            addCriterion("good_cover not in", values, "goodCover");
            return (Criteria) this;
        }

        public Criteria andGoodCoverBetween(String value1, String value2) {
            addCriterion("good_cover between", value1, value2, "goodCover");
            return (Criteria) this;
        }

        public Criteria andGoodCoverNotBetween(String value1, String value2) {
            addCriterion("good_cover not between", value1, value2, "goodCover");
            return (Criteria) this;
        }

        public Criteria andBrandIdIsNull() {
            addCriterion("brand_id is null");
            return (Criteria) this;
        }

        public Criteria andBrandIdIsNotNull() {
            addCriterion("brand_id is not null");
            return (Criteria) this;
        }

        public Criteria andBrandIdEqualTo(Integer value) {
            addCriterion("brand_id =", value, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandIdNotEqualTo(Integer value) {
            addCriterion("brand_id <>", value, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandIdGreaterThan(Integer value) {
            addCriterion("brand_id >", value, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("brand_id >=", value, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandIdLessThan(Integer value) {
            addCriterion("brand_id <", value, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandIdLessThanOrEqualTo(Integer value) {
            addCriterion("brand_id <=", value, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandIdIn(List<Integer> values) {
            addCriterion("brand_id in", values, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandIdNotIn(List<Integer> values) {
            addCriterion("brand_id not in", values, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandIdBetween(Integer value1, Integer value2) {
            addCriterion("brand_id between", value1, value2, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandIdNotBetween(Integer value1, Integer value2) {
            addCriterion("brand_id not between", value1, value2, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandNameIsNull() {
            addCriterion("brand_name is null");
            return (Criteria) this;
        }

        public Criteria andBrandNameIsNotNull() {
            addCriterion("brand_name is not null");
            return (Criteria) this;
        }

        public Criteria andBrandNameEqualTo(String value) {
            addCriterion("brand_name =", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameNotEqualTo(String value) {
            addCriterion("brand_name <>", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameGreaterThan(String value) {
            addCriterion("brand_name >", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameGreaterThanOrEqualTo(String value) {
            addCriterion("brand_name >=", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameLessThan(String value) {
            addCriterion("brand_name <", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameLessThanOrEqualTo(String value) {
            addCriterion("brand_name <=", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameLike(String value) {
            addCriterion("brand_name like", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameNotLike(String value) {
            addCriterion("brand_name not like", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameIn(List<String> values) {
            addCriterion("brand_name in", values, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameNotIn(List<String> values) {
            addCriterion("brand_name not in", values, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameBetween(String value1, String value2) {
            addCriterion("brand_name between", value1, value2, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameNotBetween(String value1, String value2) {
            addCriterion("brand_name not between", value1, value2, "brandName");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}